--> Sayadasite: Structured Design

Multiple Ads

Search

Menu Bar

Structured Design

Software Design, Cohesion and Coupling, Structured Design, Use Case Diagram, Sequence Diagram

Structured Design in Software Engineering

1. Definition

Structured Design is a software design technique that divides a large software system into smaller, manageable modules. Each module performs a specific task.

Example: A College Management System can be divided into Student Management, Faculty Management, Examination Management, and Library Management.

2. Diagram of Structured Design


3. Principles of Structured Design

1.                      Modularity: Dividing software into smaller modules.

Example: A banking system can be divided into account management, deposit, withdrawal, and transaction modules.

2.                      High Cohesion: Each module focuses on one related task.

3.                      Low Coupling: Modules have minimal dependency on one another.

4.                      Functional Independence

Each module should perform one well-defined function.

Modules should depend as little as possible on other modules.

Functional independence is achieved through high cohesion and low coupling.

5.                      Top-Down Design: Designing the main system first and then breaking it into smaller modules.

6.                      Simplicity: Making the software easy to understand and maintain.

7.                      Abstraction: Focus on the essential features of a system while hiding unnecessary details.

Describes what a module does rather than how it does it.

Example: A user withdraws money from an ATM without knowing the internal processing details.

8.                      Information Hiding: Each module should hide its internal data and implementation details.

Other modules should interact with it through clearly defined interfaces.

Example: A bank account module hides the account balance implementation and provides

functions to check or update it.

4. Advantages

·         Easy to develop and test.

·         Easy to maintain and modify.

·         Reduces software complexity.

·         Supports code reuse.

·         Makes debugging easier.

5. Disadvantages

·         Requires careful planning.

·         Changes affecting several modules may be difficult to manage.

·         Less suitable for some highly dynamic or object-oriented designs.

6. Short Answer for Exams

Structured Design is a systematic approach to software design in which a large system is divided into smaller modules. It improves modularity, maintainability, testing, and software quality.

Remember: Structured Design = Large System → Smaller Modules.

UML Diagrams-

UML Diagrams in Software Engineering

1. Definition

UML (Unified Modeling Language) is a standard visual language used to design, visualize, and document a software system.

It helps developers understand the structure and behaviour of a system before implementation. 

2. Types of UML Diagrams

UML diagrams are divided into two main categories.

Structural

Shows the structure of a system.

1. Class Diagram

2. Object Diagram

3. Component Diagram

4. Deployment Diagram

5. Package Diagram

Behavioral

Shows the behaviour of a system.

1. Use Case Diagram

2. Activity Diagram

3. State Machine Diagram

4. Sequence Diagram*

5. Communication Diagram*

*Sequence and Communication diagrams are interaction diagrams, a subgroup of behavioral diagrams.

UML 2.x defines 14 diagram types.


No comments: